package com.doublethread.easymart.modules.comment.dto;

import com.doublethread.easymart.common.result.BasePageDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * 评价查询DTO
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class CommentQueryDTO extends BasePageDTO {

    /**
     * 商品ID筛选
     */
    private Long productId;

    /**
     * 商品名称搜索
     */
    private String productName;

    /**
     * 用户ID筛选
     */
    private Long userId;

    /**
     * 用户名搜索
     */
    private String username;

    /**
     * 评论内容搜索
     */
    private String content;

    /**
     * 评分筛选：1-5星
     */
    private Integer rating;

    /**
     * 是否有图片：0-否，1-是
     */
    private Integer hasImages;

    /**
     * 是否匿名：0-否，1-是
     */
    private Integer isAnonymous;

    /**
     * 状态：0-隐藏，1-显示
     */
    private Integer status;

    /**
     * 是否有商家回复：0-否，1-是
     */
    private Integer hasReply;

    /**
     * 评论开始时间
     */
    private LocalDateTime startTime;

    /**
     * 评论结束时间
     */
    private LocalDateTime endTime;

    /**
     * 排序字段：createTime/updateTime/rating/replyTime
     */
    private String sortBy = "createTime";

    /**
     * 排序方向：asc/desc
     */
    private String sortOrder = "desc";
}
